package sv.edu.ues.dsi.palasatenea.modelo;

// Generated 10-25-2014 12:09:34 AM by Hibernate Tools 3.4.0.CR1

import java.util.Date;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.NamedQueries;
import org.hibernate.annotations.NamedQuery;

/**
 * Alumno generated by hbm2java
 */
@Entity
@Table(name = "alumno", catalog = "palasatenea")
@NamedQueries({
	@NamedQuery(name="Alumno.findByAll", query="SELECT a FROM Alumno a"),
	@NamedQuery(name="Alumno.findByIdent", query="SELECT a FROM Alumno a WHERE a.ident = :id"),
	@NamedQuery(name="Alumno.findByYear", query="SELECT a FROM Alumno a WHERE a.fnacimiento BETWEEN :fecha1 AND :fecha2")
	})
public class Alumno implements java.io.Serializable {

	private Integer ident;
	private String codigo;
	private Short estado;
	private String nombre1;
	private String nombre2;
	private String apellido1;
	private String apellido2;
	private String genero;
	private Date fnacimiento;
	private String lnacimiento;
	private String direccion;
	private String telefono;
	private String religion;
	private String enfermedades;
	private String medicamentos;
	private String alergico;
	private String aprendizaje;
	private String escuelaprevia;
	private Integer ultgrado;

	public Alumno() {
		this.codigo = "";
		this.estado = 0;
		this.nombre1 = "";
		this.nombre2 = "";
		this.apellido1 = "";
		this.apellido2 = "";
		this.genero = "";
		//this.fnacimiento = new Date();
		this.lnacimiento = "";
		this.direccion = "";
		this.telefono = "";
		this.religion = "";
		this.enfermedades = "";
		this.medicamentos = "";
		this.alergico = "";
		this.aprendizaje = "";
		this.escuelaprevia = "";
		this.ultgrado = 0;
		this.ident = 0;
	}

	public Alumno(String codigo, Short estado, String nombre1, String nombre2,
			String apellido1, String apellido2, String genero,
			Date fnacimiento, String lnacimiento, String direccion,
			String telefono, String religion, String enfermedades,
			String medicamentos, String alergico, String aprendizaje,
			String escuelaprevia, Integer ultgrado) {
		this.codigo = codigo;
		this.estado = estado;
		this.nombre1 = nombre1;
		this.nombre2 = nombre2;
		this.apellido1 = apellido1;
		this.apellido2 = apellido2;
		this.genero = genero;
		this.fnacimiento = fnacimiento;
		this.lnacimiento = lnacimiento;
		this.direccion = direccion;
		this.telefono = telefono;
		this.religion = religion;
		this.enfermedades = enfermedades;
		this.medicamentos = medicamentos;
		this.alergico = alergico;
		this.aprendizaje = aprendizaje;
		this.escuelaprevia = escuelaprevia;
		this.ultgrado = ultgrado;
	}

	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "ident", unique = true, nullable = false)
	public Integer getIdent() {
		return this.ident;
	}

	public void setIdent(Integer ident) {
		this.ident = ident;
	}

	@Column(name = "codigo", length = 8)
	public String getCodigo() {
		return this.codigo;
	}

	public void setCodigo(String codigo) {
		this.codigo = codigo;
	}

	@Column(name = "estado")
	public Short getEstado() {
		return this.estado;
	}

	public void setEstado(Short estado) {
		this.estado = estado;
	}

	@Column(name = "nombre1", length = 50)
	public String getNombre1() {
		return this.nombre1;
	}

	public void setNombre1(String nombre1) {
		this.nombre1 = nombre1;
	}

	@Column(name = "nombre2", length = 50)
	public String getNombre2() {
		return this.nombre2;
	}

	public void setNombre2(String nombre2) {
		this.nombre2 = nombre2;
	}

	@Column(name = "apellido1", length = 50)
	public String getApellido1() {
		return this.apellido1;
	}

	public void setApellido1(String apellido1) {
		this.apellido1 = apellido1;
	}

	@Column(name = "apellido2", length = 50)
	public String getApellido2() {
		return this.apellido2;
	}

	public void setApellido2(String apellido2) {
		this.apellido2 = apellido2;
	}

	@Column(name = "genero", length = 1)
	public String getGenero() {
		return this.genero;
	}

	public void setGenero(String genero) {
		this.genero = genero;
	}

	@Temporal(TemporalType.TIMESTAMP)
	@Column(name = "fnacimiento", length = 19)
	public Date getFnacimiento() {
		return this.fnacimiento;
	}

	public void setFnacimiento(Date fnacimiento) {
		this.fnacimiento = fnacimiento;
	}

	@Column(name = "lnacimiento", length = 250)
	public String getLnacimiento() {
		return this.lnacimiento;
	}

	public void setLnacimiento(String lnacimiento) {
		this.lnacimiento = lnacimiento;
	}

	@Column(name = "direccion", length = 500)
	public String getDireccion() {
		return this.direccion;
	}

	public void setDireccion(String direccion) {
		this.direccion = direccion;
	}

	@Column(name = "telefono", length = 8)
	public String getTelefono() {
		return this.telefono;
	}

	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}

	@Column(name = "religion", length = 250)
	public String getReligion() {
		return this.religion;
	}

	public void setReligion(String religion) {
		this.religion = religion;
	}

	@Column(name = "enfermedades", length = 500)
	public String getEnfermedades() {
		return this.enfermedades;
	}

	public void setEnfermedades(String enfermedades) {
		this.enfermedades = enfermedades;
	}

	@Column(name = "medicamentos", length = 500)
	public String getMedicamentos() {
		return this.medicamentos;
	}

	public void setMedicamentos(String medicamentos) {
		this.medicamentos = medicamentos;
	}

	@Column(name = "alergico", length = 500)
	public String getAlergico() {
		return this.alergico;
	}

	public void setAlergico(String alergico) {
		this.alergico = alergico;
	}

	@Column(name = "aprendizaje", length = 500)
	public String getAprendizaje() {
		return this.aprendizaje;
	}

	public void setAprendizaje(String aprendizaje) {
		this.aprendizaje = aprendizaje;
	}

	@Column(name = "escuelaprevia", length = 250)
	public String getEscuelaprevia() {
		return this.escuelaprevia;
	}

	public void setEscuelaprevia(String escuelaprevia) {
		this.escuelaprevia = escuelaprevia;
	}

	@Column(name = "ultgrado")
	public Integer getUltgrado() {
		return this.ultgrado;
	}

	public void setUltgrado(Integer ultgrado) {
		this.ultgrado = ultgrado;
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		String nombre = "";
		nombre += this.nombre1;
		if (this.nombre2 != null){
			if (!this.nombre2.isEmpty())
				nombre += " "+this.nombre2;
		}
		
		nombre += " "+this.apellido1;
		if (this.apellido2 != null){
			if (!this.apellido2.isEmpty())
				nombre += " "+this.apellido2;
		}
		return nombre;
	}

}
